在開發和部署中,Yii 應用程式可以作為 Docker 容器執行。容器就像一個輕量級的隔離虛擬機器,將其服務映射到主機的端口,例如,容器中端口 80 上的 Web 伺服器可以在您 (本地) 主機上的端口 8888 上訪問。
容器可以解決許多問題,例如在開發人員的電腦和伺服器上擁有相同的軟體版本、快速部署或在開發時模擬多伺服器架構。
您可以在 docker.com 上閱讀更多關於 Docker 容器的資訊。
docker
docker-compose
請訪問 下載頁面 以取得 Docker 工具。
安裝完成後,您應該能夠執行 docker ps
並看到類似以下的輸出
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
這表示您的 Docker daemon 正在運行中。
此外,執行 docker-compose version
,您的輸出應該看起來像這樣
docker-compose version 1.20.0, build unknown
docker-py version: 3.1.3
CPython version: 3.6.4
OpenSSL version: OpenSSL 1.1.0g 2 Nov 2017
透過 Compose,您可以設定和管理您的應用程式所需的所有服務,例如資料庫和快取。
Docker 的基本命令如下
docker-compose up -d
在背景啟動堆疊中的所有服務
docker-compose ps
列出正在運行的服務
docker-compose logs -f
持續查看所有服務的日誌
docker-compose stop
優雅地停止堆疊中的所有服務
docker-compose kill
立即停止堆疊中的所有服務
docker-compose down -v
停止並移除所有服務,請注意,當不使用主機卷時,可能會發生資料丟失
在容器中執行命令
docker-compose run --rm php composer install
在新容器中執行 composer 安裝
docker-compose exec php bash
在正在運行的 php
服務中執行 bash
您可以按照 這裡 的描述,為 Yii 本身運行 Docker 化框架測試。
當以 (mysql
) 運行 MySQL 時,您可以像下面這樣將 phpMyAdmin 容器添加到您的堆疊中
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- '8888:80'
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
depends_on:
- mysql
發現錯字或您認為此頁面需要改進嗎?
在 github 上編輯 !
註冊 或 登入 以發表評論。